@mixin clearfix {
  display: inline-block;
  &:after {
    content: ".";
    height: 0;
    clear: both;
    visibility: hidden;
  }
  * html & {
    height: 1px;
  }
}

#content {
  form {
    p {
      label {
        display: block;
        &.checkbox,
        &.radio {
          display: inline;
          font-weight: normal;
          font-size: 95%;
          text-shadow: none;
          margin-right: 1em;
          text-align: left;
        }
        &.multi_option {
          margin-bottom: 0.3em;
        }
      }
      input.textbox {
        font-family: Georgia, Palatino, "Times New Roman", Times, serif;
        font-size: 140%;
        margin-bottom: 0;
      }
      input.checkbox,
      input.radio {
        margin-top: 0.3em;
      }
      textarea {
        font-size: 100%;
        margin-top: 0.3em;
      }
      .value {
        display: block;
        margin-top: 0.25em;
        text-shadow: #666666 1px 1px 0;
      }
      .hint {
        font-size: 90%;
        display: block;
        margin-top: 0.25em;
        text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.1);
      }
      a {
        &.action {
          background-color: #7e7e7e;
          font-size: 75%;
          padding: 0.2em 0.5em 0.3em;
          text-decoration: none;
          text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.1);
          @include border-radius(4px);
          &:hover {
            background-color: #555555;
          }
        }
      }
      &.title {
        input.textbox {
          margin-top: 4px;
          font-family: Georgia, Palatino, "Times New Roman", Times, serif;
          font-size: 200%;
          width: 99.5%;
        }
      }
    }
    .set {
      float: left;
      width: 100%;
      margin-bottom: 1em;
      clear: both;
      p {
        float: left;
        margin: 0 1em 0 0;
      }
    }
  }
}

.drawer {
  margin-top: -1em;
  margin-bottom: 1em;
}

.drawer_contents {
  background: #c9c9c9;
  @include border-bottom-right-radius(6px);
  margin: 0;
  margin-right: 2px;
  padding-bottom: 2px;
  overflow: hidden;
  &:before {
    content: "\0020";
    display: block;
    width: 100%;
    @include linear-gradient(color-stops(rgba(black, 0.3), rgba(black, 0)));
    height: 3px;
    margin-bottom: -3px;
  }
  table.fieldset {
    margin: 0;
    padding: 0;
    width: 100%;
    th,
    td {
      border-top: 1px #999999 solid;
      padding: 6px;
    }
    th {
      &.label {
        font-size: 85%;
        padding: 0 15px 0 10px !important;
        whitespace: nowrap;
        width: 1%;
        vertical-align: middle;
        text-align: left;
      }
    }
    td {
      &.field {
        padding-left: 0px;
        padding-right: 10px;
        text-align: right;
        width: auto;
        input.textbox {
          font-size: 110%;
          width: 99.5%;
        }
      }
      &.actions {
        width: 40px;
        text-align: left;
        vertical-align: middle;
      }
    }
    tr:first-child {
      td,
      th {
        border-top: none;
      }
    }
  }
}

.drawer_handle {
  padding: 4px 0 5px;
  margin-top: -1px;
  a {
    background: #7e7e7e;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    color: #f0f0f0;
    font-size: 80%;
    padding: 4px 21px 5px 10px;
    position: relative;
    top: -1px;
    text-shadow: #666666 1px 1px 0;
    text-decoration: none;
    @include border-bottom-radius(6px);
    &:hover,
    &:active,
    &:focus {
      text-decoration: underline;
    }
    &.more {
      background: #7e7e7e image_url("admin/metadata_toggle.png") no-repeat 85% 8px;
    }
    &.less {
      background: #7e7e7e image_url("admin/metadata_toggle.png") no-repeat 85% -21px;
    }
  }
}

.box {
  color: #333333;
  background: #ffffff;
  font-size: 90%;
  padding: 1px 15px 10px;
  position: relative;
  margin: 3px 0 20px;
  @include border-radius(8px);
  @include pie-clearfix;
  * {
    position: relative;
  }
  &:before {
    @include linear-gradient(color-stops(white,
    #f5f1e2 50%,
    #f5f1e2));
    @include border-top-radius(10px);
    content: "\0020";
    display: block;
    position: absolute;
    width: 100%;
    height: 100px;
    overflow: hidden;
    left: 0;
    top: 0;
  }
  h3 {
    color: #333333;
    margin: 15px 0 0;
    border-bottom: 1px solid #cccccc;
    padding-bottom: 8px;
    .actions {
      float: right;
      button {
        font-size: 13px;
        padding-left: 1em;
        padding-right: 1em;
        position: relative;
        top: -4px;
      }
    }
  }
  h4 {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 4px;
    font-size: 110%;
    margin-top: 1.5em;
  }
  p.ruled {
    border-bottom: 1px solid #dddddd;
    margin: 0;
    padding: 0.5em 0;
    &:last-child {
      border: none;
    }
  }
  label {
    color: #888888;
    width: 12em;
    display: inline-block;
  }
  span.uri {
    color: #3399cc;
  }
  &:last-child {
    margin: 0;
  }
  &#preferences {
    img.avatar {
      float: right;
      margin: 10px 0px;
      z-index: 100;
    }
  }
}

textarea {
  border: 1px solid #cdc295;
  font-family: Monaco, "Courier New", Courier, monospace;
  font-size: 95%;
  &.large {
    height: 280px;
  }
}

p.updated_line {
  background-color: inherit;
  font-size: 80%;
  text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.1);
  margin-bottom: 0;
}

body.reversed {
  #content {
    form {
      p {
        label {
          color: #B9B9B9;
          font-weight: normal;
          .hint {
            display: inline;
          }
        }
      }
      .hint {
        color: #d0d0d0;
        text-shadow: none;
      }
      .buttons {
        @include alt-box;
      }
      fieldset {
        background: #fff;
        padding: 20px 15px;
        margin-bottom: 20px;
        overflow: hidden;
        @include single-box-shadow(#ababab,
        1px,
        1px,
        0);
        @include border-radius(8px);
        h3 {
          font-weight: bold;
          font-size: 120%;
          margin: -20px -20px 0 -20px;
          padding: 15px 20px 0 20px;
          text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.1);
        }
        p {
          margin-bottom: 0;
        }
      }
    }
    p.updated_line {
      color: #eeeeee;
    }
    textarea {
      border: 1px solid #EAEAEA;
    }
    input:not([type=submit]):focus,
    textarea:focus {
      border: 1px #EC65A5;
      -webkit-box-shadow: 0 0 10px #EC65A5;
      -moz-box-shadow: 0 0 10px #EC65A5;
      box-shadow: 0 0 10px #EC65A5;
      outline: 0;
    }
    input[type=checkbox] {
      border-radius: 5px;
    }
    .box {
      @include single-box-shadow(rgba(0,
      0,
      0,
      0.15),
      2px,
      2px,
      3px);
    }
  }
}

body.single_form {
  #content {
    #single_form {
      background: #f5f1e2;
      @include linear-gradient(color-stops(#fdfcf9,
      #f5f1e2 25%,
      #f5f1e2));
      border: 0.35em solid #efead3;
      padding: 0.5em 1.5em;
      padding-right: 22px;
      position: relative;
      width: 28em;
      @include border-radius(6px);
      h1 {
        font-size: 140%;
        margin: 0.75em 0 1.25em;
      }
      p {
        font-size: 90%;
        &.intro,
        &.error {
          font-size: 100%;
          line-height: 1.4;
        }
        &.error {
          color: #cc0000;
        }
        label {
          font-size: 105%;
          &.checkbox {
            font-size: 90%;
          }
        }
      }
      ul {
        font-size: 90%;
        list-style: disc;
        padding-left: 2em;
        li {
          margin-bottom: 0.5em;
        }
      }
      input.textbox {
        width: 98.5%;
      }
      span.remember_me {
        color: #333333;
        font-size: 95%;
        margin-left: 1em;
        label {
          margin: 0;
        }
        a {
          margin: 0;
          @include default-link;
        }
      }
      span.forgot_password {
        position: relative;
        top: -3px;
        margin: 0 1em;
        a {
          @include default-link;
        }
      }
      .buttons {
        margin: 1.75em 0 1em;
      }
    }
    p.version {
      background: image_url("admin/single_form_shadow.png") top center no-repeat;
      color: #666666;
      font-size: 80%;
      padding-top: 10px;
      margin-top: 0;
    }
  }
}

body.edit_user,
body.edit_personal_preferences {
  #avatar {
    left: 26em;
    position: absolute;
    text-align: center;
    width: 102px;
    p.caption {
      font-size: 70%;
      color: #e5e5e5;
      line-height: 1.3;
    }
  }
}

.button,
button,
input[type=button],
input[type=submit],
input[type=file] {
  .fa {
    color: #f3f3f3;
  }
  -webkit-appearance: none;
  font-size: 1.1em;
  padding: .5em 3em;
  margin: 0.5em;
  color: #f3f3f3;
  background-color: #94BDC3;
  border: 0;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  text-decoration: none;
  &:hover {
    color: #94BDC3;
    background-color: #f3f3f3;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
  }
  &:hover > .fa {
    color: #94BDC3;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
  }
}

.hover {
  color: #94BDC3;
  background-color: #f3f3f3;
  -webkit-transition: all .2s;
  -moz-transition: all .2s;
  -ms-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s;
}